package parsers;

import datamodel.Entry;

public interface ParserCommand {
	/**
	 * Gets whether the entry is parseable by this parser or not
	 * 
	 * @param entry
	 *            The entry to check
	 * @return Whether or not the entry can be parsed by this parser
	 */
	public boolean isParseable( Entry entry );

	/**
	 * Searches for the correct hit on the parsing server
	 * 
	 * @param entry
	 *            The entry to find
	 * @throws Exception
	 */
	public void executeSearchParsing( Entry entry ) throws Exception;

	/**
	 * Executes the final parsing to find the remaining data about the entry
	 * 
	 * @param entry
	 *            The entry to finalize
	 * @throws Exception
	 */
	public void executeFinalParsing( Entry entry ) throws Exception;
}
